#ifndef KEYFRAME_EXTRACTOR_H
#define KEYFRAME_EXTRACTOR_H

#include <QObject>
#include <QString>
#include <QPixmap>
#include <QVector>
#include "T_KeyFrameTableViewModel.h" // 使用 KeyFrameItem 结构

class KeyFrameExtractor : public QObject {
    Q_OBJECT
public:
    explicit KeyFrameExtractor(QObject* parent = nullptr);
    ~KeyFrameExtractor();

    // videoPath：输入视频的文件路径
    // outputFolder：关键帧图片保存目录（建议使用临时目录）
    // 返回值：提取到的关键帧数据（KeyFrameItem 列表）
    QVector<T_KeyFrameTableViewModel::KeyFrameItem> extractKeyFrames(const QString& videoPath, const QString& outputFolder);

signals:
    // 可选：用于实时反馈提取进度（0-100）
    void extractionProgress(int percent);
};

#endif // KEYFRAME_EXTRACTOR_H
